// 所有的本地储存相关的 现在我们封装在一个js里  也就是说我们要将方法放在这里  在其他地方使用该方法 
// es6 提供的引入和公开的方法 

// import xxx from 'xxxx'
export default {
  getStorage(key) {
    if (key == 'token') {
      // token = 'sdfjsdlkfjsdljfsldfjsldjfksljfksldfkslkfjlsdkjfs' 
      return sessionStorage.getItem(key)
    } else if (sessionStorage.getItem(key) != undefined) {
      return JSON.parse(sessionStorage.getItem(key))
    }
    return {}
  },
  setStorage(key, value) {
    let valueStr
    if (typeof value != 'string') {
      valueStr = JSON.stringify(value)
    } else {
      valueStr = value
    }
    // user= {
    //   naem: '张三',
    //   age: '10',
    //   
    // }
    // token = 'sdfjsdlkfjsdljfsldfjsldjfksljfksldfkslkfjlsdkjfs'
    // 如果用户数据是这样  我在拦截器里 只想修改token  该怎么  
    // user.token ='sdfsfsdfsdfs'
    // 拦截器是讲新token放入旧token  所以 我要将user 获取出来成对象  然后通过user.token ='新token' 最后将新的user对象转成字符串保存起来
    sessionStorage.setItem(key, valueStr)
  },
  removeStorage(key) {
    sessionStorage.removeItem(key)
  }
}
// node 
// require()
// module.exports = {}

// 以上有点类似于  for循环和for of 的关系  干的都是循环的事 但是写法不一样  原理不一样